Conventional timing and logic state analyzers have been equipped with manually positionable marks. These marks are visual indicators that identify locations of interest in the captured trace, and may also serve to delimit the endpoints of an interval whose length of time is then ascertainable without repeating the measurement that produced the captured trace. Such marks in a display may take the form of labeled cursors. The user positions them by first inspecting the displayed trace of a previously performed measurement to visually locate conditions of interest. Once such a location is found the desired mark is positioned thereto through some manual action, such as issuing an appropriate command or manipulation of an associated control. However, such visual inspection to find the various locations in the first place can be a bothersome task requiring the user to scroll through segments of a display including many signals while looking for some particular relationship between those signals, and then repeating the process for each additional mark. Such a marking process may be said to expressly position marks.
It would be desirable if the user could simply specify the location of a mark in terms of the particular relationship that is of interest between the traced signals. The analyzer itself would then search through the sampled measurement data in its acquisition memory to locate the specified relationship of interest, whereupon it would automatically place the mark into the trace at that location. Such a marking process may be said to inferentially position marks. It would be especially beneficial if the rule of inference used to inferentially position a mark could include qualification conditions whose satisfaction depends upon certain events within the traced signals. For example, a certain pattern upon selected signals could be required to occur for either greater than or less than a specified duration. Such extended inferential marking may be referred to as qualified inferential marking. It would also be desirable if the location of subsequent marks could be specified with reference to marks already placed; e.g., specifying that a second mark is to be located after the location in the trace of a first mark.
Once the marks are in place it would be of further advantage if the user could instruct the timing analyzer to make certain measurements pertaining to the marks. For example, it may be desirable to know the length of time between two marks, or the number of marks occurring between two designated marks. The latter measurement allows the user to learn how many times a certain event occurs within a designated region of interest. Still further advantage can be gained by repetitively capturing a series of traces, placing the marks anew in each newly captured trace, measuring the time interval or counting the number of marks as explained above, and keeping certain statistical records pertaining to the measured time interval or count. In particular, it is desirable to determine the maximum and minimum measured values, as well as the mean and stardard deviation. After a designated number of traces have been captured these statistics can be displayed as part of the display for the last captured trace.
Other useful features would include the ability to halt the repetitive execution of the series of trace measurements upon detection of some condition exhibited by the latest captured trace. Such conditions may include whether a time interval between two specified marks is greater than or less than a selected value, whether the number of intervening marks between two specified marks is greater than or less than a selected number, and whether or not a specified sequence of marks occurred in the captured trace. This last condition is particularly interesting since it amounts to a type of extended post facto trigger. That is, it can be used to identify sequential occurrences of interest in the data that cannot be detected in real time at the high speeds at which the data is sampled and stored. But they can be detected by examining the trace after it is stored. A detected sequence causes that trace to be retained. Still another useful feature would be the ability to compress a captured trace to just those samples that are marked.
These and other desirable features relating to use of marks in the trace of a timing analyzer or logic state analyzer are accomplished by equipping the analyzer with mechanisms that respond to appropriate commands by searching through the stored trace data in the acquisition memory. Upon detection of a specified condition the associated mark is added to the trace. Once the marks are in place an additional mechanism searches the marked trace to determine a desired time interval or count and calculates the statistics of interest. Further mechanisms examine the marks in the captured trace to determine if a series of repetitive measurements is to be concluded.